package com.lxh.student.bo;

public class SelectCourseBo {
    public static boolean check(String xuanXiu, String yiXiu) {
        //同一时间 直接返回true

        if(xuanXiu.equals(yiXiu)){
            return true;
        }

        String[] chose = xuanXiu.split("-");
        String[] exists = yiXiu.split("-");
        //[1,2,3]
        //[1,1,2]
        //判断是否为同一天的课程
        if(!chose[0].equals(exists[0])){
            //不是同一天 直接返回false  课程不冲突
            return false;
        }

        //同一天 判断是否冲突
        //选修
        Integer num1 = Integer.valueOf(chose[1]);
        //已有
        Integer num2 = Integer.valueOf(exists[1]);
        //选修课的节数 大于 已有课 代表选修课在已有的后面上
        if(num1>num2){
            System.out.println("选修在已有的下面上课");
            //已有课的节数 + 课时 > 选修课的节数 时间就重合了
            Integer times = Integer.valueOf(exists[2]);
            //直接判断num2+times (已有课的节数+课时) , num1(选修课的节数)
            return checkNum(num2 + times,num1);
        }else {
            System.out.println("已有在选修的下面上课");
            //已有课在 选修课下面
            Integer times = Integer.valueOf(chose[2]);
            return checkNum(num1 + times,num2);
        }
    }

    /**
     * @description:
     *  true 就是 课程时间重合
     *  false 就是课程时间不重合
     */
    public static boolean checkNum(Integer num1, Integer num2) {
        if (num1 > num2) {
            return true;
        }
        return false;
    }
}
